#include "Color.h"

Color HSV2Color(Float h, Float s, Float v) {
	int hi = int(h / 60) % 6;
	Float f = h / 60 - hi;
	Float p = v * (1 - s);
	Float q = v * (1 - f * s);
	Float t = v * (1 - s * (1 - f));
	switch (hi) {
	case 0:
		return Color(v, t, p);
	case 1:
		return Color(q, v, p);
	case 2:
		return Color(p, v, t);
	case 3:
		return Color(p, q, v);
	case 4:
		return Color(t, p, v);
	case 5:
		return Color(v, p, q);
	default:
		return Color();
	}
}